# Contributing Guidelines

Thank you for your interest in contributing to Crypto Trader!

## How to Contribute

### Reporting Bugs

1. Check if the bug has already been reported
2. Create a new issue with:
   - Clear description
   - Steps to reproduce
   - Expected vs actual behavior
   - System information
   - Log files (if applicable)

### Suggesting Features

1. Check if the feature has been suggested
2. Create a feature request with:
   - Use case description
   - Proposed solution
   - Benefits
   - Implementation considerations

### Code Contributions

1. **Fork the repository**
2. **Create a feature branch**:
   ```bash
   git checkout -b feature/my-feature
   ```
3. **Make your changes**:
   - Follow coding standards
   - Write tests
   - Update documentation
4. **Run tests**:
   ```bash
   pytest
   ```
5. **Commit changes**:
   ```bash
   git commit -m "feat(module): add new feature"
   ```
6. **Push to your fork**:
   ```bash
   git push origin feature/my-feature
   ```
7. **Create a pull request**

## Pull Request Process

### Before Submitting

- [ ] Code follows style guide
- [ ] Tests are included and passing
- [ ] Documentation is updated
- [ ] No new warnings or errors
- [ ] Coverage is maintained

### Pull Request Template

```markdown
## Description
Brief description of changes

## Type of Change
- [ ] Bug fix
- [ ] New feature
- [ ] Breaking change
- [ ] Documentation update

## Testing
How was this tested?

## Checklist
- [ ] Code follows style guide
- [ ] Tests added/updated
- [ ] Documentation updated
- [ ] No breaking changes (or documented)
```

## Code Review

All pull requests require review:

- At least one approval required
- Address review comments
- Keep PR focused and small when possible
- Respond to feedback promptly

## Development Setup

See [Development Setup](setup.md) for environment setup.

## Coding Standards

See [Coding Standards](coding_standards.md) for detailed guidelines.

## Questions?

- Open a discussion
- Check existing issues
- Review documentation
- Ask in comments

## Recognition

Contributors will be recognized in:
- CONTRIBUTORS.md
- Release notes
- Project documentation

Thank you for contributing!

